package com.hspedu.tankgame;


import javax.swing.*;
import java.awt.*;

//坦克大战的绘图区域
public class MyPanel extends JPanel {

    //定义我的坦克
    Hero hero = null;
    public MyPanel(){
         hero = new Hero(100, 100);
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);
        g.fillRect(0,0,1000,750);//填充矩形
        drawTank(hero.getX(),hero.getY(),g,0,1);
        drawTank(hero.getX()+50,hero.getY(),g,0,0);
        drawTank(hero.getX()+100,hero.getY(),g,0,1);

//        g.setColor(Color.CYAN);
//        g.fillRect(intX,intY,10,60);
//        g.fillRect(intX+10,intY+10,20,40);
//        g.fillRect(intX+30,intY,10,60);
//        g.setColor(Color.BLUE);
//        g.fillOval(30,40,20,20);
//        g.drawLine(40,20,40,50);
    }


    /*
    x:坦克的左上角x坐标
    y:坦克的左上角y坐标
    g：画笔
    direct:方向
    type:坦克类型
     */
    public void drawTank(int x,int y,Graphics g,int direct,int type){
        //该局不同类型的坦克，设置不同的颜色
        switch (type){
            case 0://我们的坦克
                g.setColor(Color.cyan);
                break;
            case 1://敌人的坦克
                g.setColor(Color.yellow);
                break;
        }

        //根据坦克的方向绘制坦克
        switch (direct){
            case 0://向上
                g.fill3DRect(x,y,10,60,false);//坦克左边轮子
                g.fill3DRect(x+10,y+10,20,40,false);//坦克盖子
                g.fill3DRect(x+30,y,10,60,false);//坦克右边轮子
                g.fillOval(x+10,y+20,20,20);//坦克圆形盖子
                g.drawLine(x+20,y,x+20,y+30);//坦克炮筒
                break;
            default:
                System.out.println("暂时没有处理");
        }
    }

}
